<?php


namespace LazadaApi\Services;


class LazadaDataMoatService extends BaseLazadaService
{
    /**
     * 请注意，当前所有区域都必须使用域“ api.lazada.com”来调用此API。此API用于访问DataMoat帐户安全服务，这是访问敏感数据的过程中必需的
     *
     * @see https://open.lazada.com/doc/api.htm?spm=a2o9m.11193531.0.0.2c3d6bbe6GdZ0B#/api?cid=15&path=/datamoat/compute_risk
     * [不需要access_token]
     *
     * @param string $time    1519714281000
     * @param string $appName yourAppName 申请应用类别时在LAZOP控制台上注册的应用名称
     * @param string $userId  peter Lazada卖方用于登录您的应用程序的帐户。 （注意：帐户的格式取决于您应用的设置）
     * @param string $userIp  11.163.1.160
     * @param string $ati     0ca175b9c0f726a831d895e269332461
     *
     * @return mixed
     * @throws \Exception
     */
    public function computeRisk(string $time, string $appName, string $userId, string $userIp, string $ati)
    {
        $this->addApiParam('time', $time);
        $this->addApiParam('appName', $appName);
        $this->addApiParam('userId', $userId);
        $this->addApiParam('userIp', $userIp);
        $this->addApiParam('ati', $ati);

        return $this->post('/datamoat/compute_risk');
    }

    /**
     * 请注意，当前所有区域都必须使用域“ api.lazada.com”来调用此API。此API用于访问DataMoat帐户安全服务，这是访问敏感数据的过程中必需的。
     *
     * @see https://open.lazada.com/doc/api.htm?spm=a2o9m.11193531.0.0.2c3d6bbe6GdZ0B#/api?cid=15&path=/datamoat/login
     *
     * @param string $time        1519714281000
     * @param string $appName     yourAppName 申请应用类别时在LAZOP控制台上注册的应用名称
     * @param string $userId      peter Lazada卖方用于登录您的应用程序的帐户。 （注意：帐户的格式取决于您应用的设置）
     * @param string $userIp      11.163.1.160
     * @param string $ati         0ca175b9c0f726a831d895e269332461
     * @param string $loginResult fail Set it to success if login is successful and fail if login is unsuccessful
     * @param string $loginMessage
     *
     * @return mixed
     * @throws \Exception
     */
    public function login(string $time, string $appName, string $userId, string $userIp, string $ati, string $loginResult, string $loginMessage)
    {
        $this->addApiParam('time', $time);
        $this->addApiParam('appName', $appName);
        $this->addApiParam('userId', $userId);
        $this->addApiParam('userIp', $userIp);
        $this->addApiParam('ati', $ati);
        $this->addApiParam('loginResult', $loginResult);
        $this->addApiParam('loginMessage', $loginMessage);

        return $this->post('/datamoat/login');
    }

    protected function getApiGateWay(): string
    {
        return 'https://api.lazada.com/rest';
    }
}